/*
 * Copyright 2009 BioTeam Inc
 * 
 * Licensed under License GNU LESSER GENERAL PUBLIC LICENSE version 3.0 (the "License"); you may not
 * use this file except in compliance with the License. You may obtain a copy of
 * the License at
 * 
 * http://www.gnu.org/copyleft/lesser.html
 * 
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
 * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
 * License for the specific language governing permissions and limitations under
 * the License.
 */
package net.bioteam.appweb.datatype;

import java.util.LinkedList;
import java.util.List;

import org.biomoby.shared.MobyDataType;

public class DataTypeNode implements Cloneable
{
	@Override
	protected Object clone() throws CloneNotSupportedException
	{
		DataTypeNode ret=new DataTypeNode(type);
		for (DataTypeNode child: subTypes)
		{
			ret.addChild((DataTypeNode) child.clone());
		}
		return ret;
	}
	public MobyDataType type;
	public DataTypeNode(MobyDataType type)
	{
		super();
		this.type = type;
	}
	private List<DataTypeNode> subTypes=new LinkedList<DataTypeNode>();
	
	public void addChild(DataTypeNode childNode)
	{
		subTypes.add(childNode);
	}
	
	public List<DataTypeNode> getSubTypes()
	{
		return subTypes;
	}
	
	
	
}
